from __clrclasses__.Autodesk.AutoCAD.DatabaseServices import ObjectId as _n_0_t_0
from __clrclasses__.Autodesk.AutoCAD.DatabaseServices import DBObject as _n_0_t_1
from __clrclasses__.Autodesk.AutoCAD.DatabaseServices import Database as _n_0_t_2
from __clrclasses__.Autodesk.AutoCAD.DatabaseServices import Entity as _n_0_t_3
from __clrclasses__.Autodesk.AutoCAD.Runtime import DisposableWrapper as _n_1_t_0
from __clrclasses__.Autodesk.AutoCAD.Runtime import RXClass as _n_1_t_1
from __clrclasses__.System import ValueType as _n_2_t_0
from __clrclasses__.System import IDisposable as _n_2_t_1
from __clrclasses__.System import UInt32 as _n_2_t_2
from __clrclasses__.System import Enum as _n_2_t_3
from __clrclasses__.System import IComparable as _n_2_t_4
from __clrclasses__.System import IFormattable as _n_2_t_5
from __clrclasses__.System import IConvertible as _n_2_t_6
from __clrclasses__.System import IntPtr as _n_2_t_7
from __clrclasses__.System import EventArgs as _n_2_t_8
from __clrclasses__.System import MulticastDelegate as _n_2_t_9
from __clrclasses__.System import ICloneable as _n_2_t_10
from __clrclasses__.System import IAsyncResult as _n_2_t_11
from __clrclasses__.System import AsyncCallback as _n_2_t_12
from __clrclasses__.System.Collections.Generic import Dictionary as _n_3_t_0
from __clrclasses__.System.Collections.Specialized import StringCollection as _n_4_t_0
from __clrclasses__.System.Runtime.InteropServices.ComTypes import ITypeInfo as _n_5_t_0
from __clrclasses__.System.Runtime.Serialization import ISerializable as _n_6_t_0
import typing
class AcEdPropertyInspectorReactorImpl(_n_2_t_0):
    pass
class CategoryCollectable(CollectableObject, _n_2_t_1):
    @property
    def CategoryId(self) -> int:"""CategoryId { get; } -> int"""
    @property
    def Description(self) -> str:"""Description { get; } -> str"""
    @property
    def Name(self) -> str:"""Name { get; } -> str"""
    @property
    def Properties(self) -> CollectionVector:"""Properties { get; } -> CollectionVector"""
    def __init__(self) -> CategoryCollectable:...
    def IsCollapsed(self) -> bool:...
    def IsEqual(self, name: str) -> bool:...
    def IsEqual(self, name: str, categoryId: int) -> bool:...
    def IsEqual(self, name: str, categoryId: int, parentCategoryId: int) -> bool:...
    def IsEqual(self, category: CategoryCollectable, check: object, flags: _n_2_t_2) -> bool:...
    def RemoveDynamicCollectables(self):...
    def RemoveDynamicCollectables(self, deleteProperty: bool):...
    def Sync(self, category: CategoryCollectable):...
    def Sync(self, category: CategoryCollectable, inequalityFlags: _n_2_t_2):...
    def Sync(self, category: CategoryCollectable, inequalityFlags: _n_2_t_2, literalUnion: bool):...
    def ToggleState(self) -> int:...
class CategoryInequalityFlags(_n_2_t_3, _n_2_t_4, _n_2_t_5, _n_2_t_6):
    CategoryCommandButtons: int
    CategoryId: int
    Description: int
    Name: int
    Parent: int
    value__: int
    Visible: int
    Weight: int
class CollectableObject(_n_1_t_0, _n_2_t_1):
    @property
    def CollectableName(self) -> str:"""CollectableName { get; } -> str"""
    @property
    def ObjectCollectableKind(self) -> int:"""ObjectCollectableKind { get; } -> int"""
    @property
    def Weight(self) -> int:"""Weight { get; } -> int"""
    def __init__(self) -> CollectableObject:...
class CollectionVector(_n_1_t_0, _n_2_t_1):
    def __init__(self) -> CollectionVector:...
    def __init__(self, initialSize: int) -> CollectionVector:...
    def Add(self, value: CollectableObject):...
    def Add(self, vector: CollectionVector):...
    def ApplyOemFilter(self, general: str):...
    def ApplyOemFilter(self, general: str, zeroBased: bool):...
    def Cleanup(self):...
    def Cleanup(self, zeroBased: bool):...
    def Count(self) -> int:...
    def DestroyControls(self):...
    def DestroyControls(self, zeroBased: bool):...
    def FindCategory(self, name: str) -> CategoryCollectable:...
    def FindCategory(self, name: str, categoryId: int) -> CategoryCollectable:...
    def FindCategory(self, name: str, categoryId: int, parentCategoryId: int) -> CategoryCollectable:...
    def FindCategory(self, name: str, categoryId: int, parentCategoryId: int, zeroBased: bool) -> CategoryCollectable:...
    def InsertAt(self, index: int, value: CollectableObject):...
    def Item(self, index: int) -> CollectableObject:...
    def NestCategories(self):...
    def NestCategories(self, zeroBased: bool):...
    def Print(self, logFile: str):...
    def Print(self, logFile: str, append: bool):...
    def RemoveAll(self):...
    def RemoveAt(self, index: int):...
    def RemoveDynamicCollectables(self):...
    def SetAt(self, index: int, value: CollectableObject):...
    def SetCategoryWeight(self, categoryName: str, weight: int):...
    def SetCategoryWeight(self, categoryName: str, weight: int, zeroBased: bool):...
    def Sort(self, begin: int, finish: int):...
    def SortVectorByWeights(self, begin: int, finish: int):...
class ObjectPropertyManagerProperties(object):
    @staticmethod
    def ClassIsVetoed(cls: _n_1_t_1, isQPContext: bool) -> bool:...
    @staticmethod
    def ConvertBlkrefToXref(objId: _n_0_t_0) -> bool:...
    @staticmethod
    def GetCategoryId(prop: PropertyCollectable) -> int:...
    @staticmethod
    def GetDisplayName(objId: _n_0_t_0) -> str:...
    @staticmethod
    def GetDisplayName(obj: _n_0_t_1) -> str:...
    @staticmethod
    def GetDisplayNameGuts(pUnk: object) -> str:...
    @staticmethod
    def GetMultiplePropertyGuids(cls: _n_1_t_1, GUIDs: _n_4_t_0) -> bool:...
    @staticmethod
    def GetNonEntityObjectTypes(isTooltipsContext: bool) -> _n_3_t_0[str, _n_4_t_0]:...
    @staticmethod
    def GetProperties(objId: _n_0_t_0, bFilterable: bool, bQPContext: bool) -> CollectionVector:...
    @staticmethod
    def GetProperties(obj: _n_0_t_1, bFilterable: bool, bQPContext: bool) -> CollectionVector:...
    @staticmethod
    def GetPropertiesForSubtype(objId: _n_0_t_0, bFilterable: bool, sGUID: str, bQPContext: bool) -> CollectionVector:...
    @staticmethod
    def GetPropertiesForSubtype(obj: _n_0_t_1, bFilterable: bool, sGUID: str, bQPContext: bool) -> CollectionVector:...
    @staticmethod
    def GetPropertiesForSubtypeGuts(pUnk: object, bFilterable: bool, sGUID: str, bQPContext: bool) -> CollectionVector:...
    @staticmethod
    def GetPropertiesGuts(pUnk: object, bFilterable: bool, bQPContext: bool) -> CollectionVector:...
    @staticmethod
    def GetSubtypes(cls: _n_1_t_1, GUIDs: _n_4_t_0, displayNames: _n_4_t_0) -> bool:...
    @staticmethod
    def GiveClassChanceToCreate(cls: _n_1_t_1, db: _n_0_t_2, pEntOut: _n_0_t_3, sGUID: str) -> _n_0_t_0:...
    @staticmethod
    def IsDynamicProperty(prop: PropertyCollectable, GUIDs: _n_4_t_0) -> bool:...
class ObjectPropertyManagerPropertyUtility(object):
    @staticmethod
    def GetIUnknownFromObject(obj: _n_0_t_1, bAttachToObject: bool) -> _n_2_t_7:...
    @staticmethod
    def GetIUnknownFromObjectId(objId: _n_0_t_0) -> _n_2_t_7:...
    @staticmethod
    def GetTypeInfo(obj: object, lcid: int) -> _n_5_t_0:...
    @staticmethod
    def ObjectSupportsNonDBResidency(obj: _n_0_t_1) -> bool:...
class PropertyCategoryId(_n_2_t_3, _n_2_t_4, _n_2_t_5, _n_2_t_6):
    AltUnits: int
    Appearance: int
    Attributes: int
    Behavior: int
    ControlPoints: int
    Data: int
    DataPoints: int
    Dde: int
    Fit: int
    Font: int
    General: int
    Geometry: int
    ImageAdjust: int
    LinesArrows: int
    List: int
    Mass: int
    Mesh: int
    Misc: int
    Nil: int
    Pattern: int
    Position: int
    PrimaryUnits: int
    Scale: int
    Table: int
    Text: int
    Tolerances: int
    value__: int
class PropertyCollectable(CollectableObject, _n_2_t_1):
    @property
    def Description(self) -> str:"""Description { get; } -> str"""
    @property
    def DISP(self) -> object:"""DISP { get; } -> object"""
    @property
    def dispid(self) -> int:"""dispid { get; } -> int"""
    @property
    def MemberId(self) -> int:"""MemberId { get; } -> int"""
    @property
    def Name(self) -> str:"""Name { get; } -> str"""
    @property
    def Visible(self) -> int:"""Visible { get; } -> int"""
    @property
    def weight(self) -> int:"""weight { get; set; } -> int"""
    def __init__(self) -> PropertyCollectable:...
    def GetValue(self, unknown: _n_2_t_7, value: object) -> bool:...
    def IsEqual(self, propertyCollectable: PropertyCollectable, check: object, flags: _n_2_t_2) -> bool:...
    def Skip(self) -> bool:...
    def Sync(self, propertyCollectable: PropertyCollectable):...
    def Sync(self, propertyCollectable: PropertyCollectable, inequalityFlags: _n_2_t_2):...
class PropertyInequalityFlags(_n_2_t_3, _n_2_t_4, _n_2_t_5, _n_2_t_6):
    ClsidPropPage: int
    Disabled: int
    Ellipses: int
    Enum: int
    FullView: int
    IntegralHeight: int
    Name: int
    Parent: int
    PropertyControl: int
    TextColor: int
    Type: int
    value__: int
    Visible: int
    Weight: int
class PropertyInspectorEventArgs(_n_2_t_8):
    @property
    def OPMModeFlag(self) -> int:"""OPMModeFlag { get; } -> int"""
    @property
    def ParentWindow(self) -> _n_2_t_7:"""ParentWindow { get; } -> IntPtr"""
    @property
    def Property(self) -> object:"""Property { get; } -> object"""
    @property
    def Value(self) -> object:"""Value { get; } -> object"""
    def __init__(self) -> PropertyInspectorEventArgs:...
class PropertyInspectorEventHandler(_n_2_t_9, _n_2_t_10, _n_6_t_0):
    def __init__(self, A_0: object, A_1: _n_2_t_7) -> PropertyInspectorEventHandler:...
    def BeginInvoke(self, sender: object, e: PropertyInspectorEventArgs, callback: _n_2_t_12, obj: object) -> _n_2_t_11:...
    def EndInvoke(self, result: _n_2_t_11):...
    def Invoke(self, sender: object, e: PropertyInspectorEventArgs):...
class PropertyInspectorEventManager(object):
    @property
    def propertyChanged(self) -> PropertyInspectorEventHandler:
        """propertyChanged Event: PropertyInspectorEventHandler"""
    @property
    def propertyDialogDismissed(self) -> PropertyInspectorEventHandler:
        """propertyDialogDismissed Event: PropertyInspectorEventHandler"""
    @property
    def propertyDialogInvoked(self) -> PropertyInspectorEventHandler:
        """propertyDialogInvoked Event: PropertyInspectorEventHandler"""
    @property
    def propertyWillChange(self) -> PropertyInspectorEventHandler:
        """propertyWillChange Event: PropertyInspectorEventHandler"""
    @staticmethod
    def Instance() -> PropertyInspectorEventManager:...
